package com.xinqi.modules.sys.feedback.manager;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.xinqi.common.mybatis.data.service.BaseService;
import com.xinqi.modules.sys.feedback.domain.FeedbackEntity;
import com.xinqi.modules.sys.feedback.dto.req.FeedbackQueryDTO;
import com.xinqi.modules.sys.feedback.dto.rsp.FeedbackResultDTO;

import java.util.List;

/**
 * 用户反馈表管理层
 *
 * @author: yyzhenn
 * @date: 2023/04/23
 */
public interface FeedbackManager extends BaseService<FeedbackEntity> {

    /**
     * 自定义分页查询
     *
     * @param page
     * @param query
     * @return
     */
    Page<FeedbackResultDTO> findPage(Page<Object> page, FeedbackQueryDTO query);

    /**
     * 根据id查询 用户反馈表数据
     *
     * @param id
     * @return
     */
    FeedbackResultDTO findById(Long id);

    /**
     * 查询用户有奖反馈记录
     *
     * @param userId
     * @return
     */
    FeedbackEntity findRewardedFeedback(Long userId);

    /**
     * 查询用户有奖反馈记录
     *
     * @param userIds
     * @return
     */
    FeedbackEntity findRewardedFeedbackList(List<Long> userIds);

}
